Bending the Rules: Steps Toward Semantically Enriched Graphical Rewrite Rules
نویسنده
چکیده
dimensional situations containing objects (Figure 1). Situations can be interpreted with respect to objects contained and spatial relationships holding between these objects. The differences between situations imply one or more actions capable of transforming one situation into another. Figure 1 depicts a rewrite rule containing cars, traffic lights, and roads. One possible interpretation for the action implied is that the car moved. Graphical rewrite rules, as a form of end-user programming, suffer from their implicit underlying model. Interpretation of rewrite rules limited to syntactic properties makes it laborious for end users to define non-trivial behavior. Semantically enriched graphical rewrite rules have increased expressiveness, resulting in a significantly reduced number of rewrite rules. This reduction is essential in order to keep rewrite rule-based programming approaches feasible for end-user programming. The extension of the rewrite rule model with semantics not only benefits the definition of behavior but additionally it supports the entire visual programming process. Specifically the benefits include support for defining object look, laying out scenes consisting of dependent objects, defining behavior with a reduced number of rewrite rules, and reusing existing behaviors via rewrite rule analogies. These benefits are described in the context of the Agentsheets programming substrate. Figure 1. Rewrite Rule = ⇒ Action(s) The implicit nature of graphical rewrite rules, due to the lack of sufficient interpretational clues, makes it hard for end users to assess their general applicability. Would the rule shown also work for other cars, other roads? To what other related situations would the rule apply? Is the car in situation 1 the same car as in situation 2? Unless rewrite rules serve as literal substitutions of one situation with another it is important for the end user to understand how rules are interpreted in order to allow for generalization of objects and spatial relationships between objects.
منابع مشابه
Patternprogrammer: yet another rule-based programming environment for children
Graphical rewrite rules are often used in programming environments for children. These rules consist of two parts: a left-hand side, which is visually matched in the environment, and a right hand side, which replaces the matched area. Programs using graphical rewrite rules typically describe behaviour 2D visual simulations where the program describes how visual agents move around a 2D space and...
متن کاملHierarchical Specification of Graphical User Interfaces using a Graph Grammar Approach
In this contribution we consider a rule based visual language for the specification of graphical user interfaces (GUIs). Our approach uses a graph rewrite approach in such a way that the state of a GUI is represented as a complex graph. The results of an action is represented by a rewrite rule on such graphs. Since the GUI features are represented as little pictures like windows, listboxes etc....
متن کاملVisual Specification and Monitoring of Software Agents in Decentralized Process-Centred Environments
ion", in Proc. of the 1995 IEEE Symp. on Visual Languages, Darmsdart, Germany (Sept. 1995), IEEE CS Press, pp. 53-60. 12. D.Q. Zhang and K.A. Zhang, "Visual Programming Environment for Distributed Systems", in Proc. of the 1995 IEEE Sym. on Visual Languages, Darmsdadt, Germany (Sept. 1995), IEEE CS Press, pp. 310-317. 13. G. Wirtz, "A Visual Approach for Developing, Understanding and Analyzing ...
متن کاملMaking the stabilizer ZX-calculus complete for scalars
The ZX-calculus is a graphical language for quantum processes with built-in rewrite rules. The rewrite rules allow equalities to be derived entirely graphically, leading to the question of completeness: can any equality that is derivable using matrices also be derived graphically? The ZX-calculus is known to be complete for scalar-free pure qubit stabilizer quantum mechanics, meaning any equali...
متن کاملVisual programming with analogical representations: Inspirations from a semiotic analysis of comics
Analogical representations based on pictures of domain objects can be used in visual programming to provide a close mapping between the program and the resulting runtime display, which can make programming easier for children and other users. The use of graphical rewrite rules with before and after pictures is an example of this approach. Graphical rewrite rules have some similarities with comi...
متن کامل